//
// Created by fazhehy on 2024/3/2.
//

#ifndef HY_COMMON_INC_H
#define HY_COMMON_INC_H

#include <stdarg.h>

#include "arm_math.h"

#include "zf_common_headfile.h"

#include "st7789.h"
#include "encoder.h"
#include "flash.h"
#include "key.h"
#include "nrf24l01.h"
#include "motor.h"
#include "servo.h"

#include "lora.h"

#include "menu.h"
#include "vofa.h"
#include "AHRS.h"
#include "protocol.h"
#include "pid.h"
#include "gnss.h"
#include "enu.h"
#include "beep.h"
#include "learn.h"

#define BLDC
#define CAR_NUM     1

typedef struct {
    int16_t speed;
    float p;
    float i;
    float d;
}servo_param_t;

#include "task.h"
#include "task_outdoor_kun.h"
#include "task_outdoor_precise.h"
#include "task_indoor_kun.h"
#include "task_indoor_precise.h"
#include "imu.h"
#include "task_outdoor_back_run.h"
#include "task_outdoor_double.h"
#include "task_indoor_ensure.h"
#include "task_outdoor_ensure.h"
#include "task_outdoor_learn.h"
#include "task_indoor_double.h"

extern position_pid_t servo_pid;

#endif //HY_COMMON_INC_H
